Skip to content

[SYCL] Align some extensions with SYCL 2020 #4432

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

dm-vodopyanov
Copy link
Contributor

@dm-vodopyanov dm-vodopyanov commented Aug 30, 2021

This patch

  1. aligns these extensions with SYCL 2020 [section 6 in the spec]:

    • Enqueue barrier [SYCL_EXT_INTEL_ENQUEUE_BARRIER]
    • Level Zero backend [SYCL_EXT_ONEAPI_BACKEND_LEVEL_ZERO]
    • Local memory [SYCL_EXT_ONEAPI_LOCAL_MEMORY]
    • USM address spaces [SYCL_EXT_INTEL_USM_ADDRESS_SPACES]
  2. partially aligns with SYCL 2020:

    • mem_channel [SYCL_EXT_INTEL_MEM_CHANNEL_PROPERTY]
  3. deprecates this extension:

    • sycl::detail::bit_cast [SYCL_INTEL_bitcast]
  4. changes the location of this extension:

    • sycl::ext::intel::online_compiler moves to sycl::ext::intel::experimental.
      sycl::ext::intel::online_compiler is deprecated.

This patch

 1. aligns these extensions with SYCL 2020 [section intel#6 in the spec]:

    - Enqueue barrier [SYCL_EXT_INTEL_ENQUEUE_BARRIER]
    - Level Zero backend [SYCL_EXT_ONEAPI_BACKEND_LEVEL_ZERO]
    - Local memory [SYCL_EXT_ONEAPI_LOCAL_MEMORY]
    - mem_channel property [SYCL_EXT_INTEL_MEM_CHANNEL_PROPERTY]
    - USM address spaces [SYCL_EXT_INTEL_USM_ADDRESS_SPACES]

2. deprecates these extensions:

    - sycl::detail::bit_cast [SYCL_INTEL_bitcast]

3. changes the location of these extensions:

    - sycl::ext::intel::online_compiler moves to sycl::ext::intel::experimental.
      sycl::ext::intel::online_compiler is deprecated.
@dm-vodopyanov dm-vodopyanov requested review from bader, pvchupin and a team as code owners August 30, 2021 18:06
@dm-vodopyanov
Copy link
Contributor Author

FAIL: SYCL::bfloat16.cpp in buildbot/Lit_With_Cuda is a common issue.

@bader
Copy link
Contributor

bader commented Aug 31, 2021

FAIL: SYCL::bfloat16.cpp in buildbot/Lit_With_Cuda is a common issue.

It's already resolved. You can restart the tests to get relevant results.

vladimirlaz
vladimirlaz previously approved these changes Aug 31, 2021
@dm-vodopyanov
Copy link
Contributor Author

@intel/dpcpp-specification-reviewers, please review.

@dm-vodopyanov
Copy link
Contributor Author

@rolandschulz @Pennycook @jbrodman @gmlueck @mkinsner, friendly reminder.

@romanovvlad
Copy link
Contributor

@v-klochkov @GarveyJoe @MrSidims @smaslov-intel for awareness.

@MrSidims
Copy link
Contributor

MrSidims commented Sep 1, 2021

No objections from my side.

bader
bader previously approved these changes Sep 1, 2021
Copy link
Contributor

@bader bader left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sycl/doc/CompilerAndRuntimeDesign.md change looks good to me.

@bader bader requested a review from GarveyJoe September 1, 2021 13:38
@bader
Copy link
Contributor

bader commented Sep 1, 2021

Added @GarveyJoe to review "USM address spaces" spec changes.

@GarveyJoe
Copy link
Contributor

LGTM

@v-klochkov
Copy link
Contributor

@dm-vodopyanov This PR is huge - 26 files and it changes many various things. The description says there are 3 major changes that seem independent from each other. It is difficult to review one huge PR. 3 separate may be often reviewed/merged faster than 1 big PR.
Please create a separate PR for each of them, unless there is some reason to have all changes in one place.

Copy link
Contributor

@gmlueck gmlueck left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think more work needs to be done to these extension specifications before they are fully aligned with SYCL 2020. Some of them still say they are based on SYCL 1.2.1, and they still contain references to specific sections in SYCL 1.2.1. If it was your intent to fully align these extensions, I think these changes should be made also.

bader
bader previously approved these changes Sep 3, 2021
Copy link
Contributor

@bader bader left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for doing this housekeeping!

bader
bader previously approved these changes Sep 7, 2021
@dm-vodopyanov
Copy link
Contributor Author

@gmlueck, can you please review?
@vladimirlaz, @bader, can you please approve once again?

@romanovvlad romanovvlad merged commit 7fb56cf into intel:sycl Sep 8, 2021
DoyleLi pushed a commit to DoyleLi/intel_llvm that referenced this pull request Sep 13, 2021
This patch

 1. aligns these extensions with SYCL 2020 [section #6 in the spec]:

    - Enqueue barrier [SYCL_EXT_INTEL_ENQUEUE_BARRIER]
    - Level Zero backend [SYCL_EXT_ONEAPI_BACKEND_LEVEL_ZERO]
    - Local memory [SYCL_EXT_ONEAPI_LOCAL_MEMORY]
    - mem_channel property [SYCL_EXT_INTEL_MEM_CHANNEL_PROPERTY]
    - USM address spaces [SYCL_EXT_INTEL_USM_ADDRESS_SPACES]

2. deprecates these extensions:

    - sycl::detail::bit_cast [SYCL_INTEL_bitcast]

3. changes the location of these extensions:

    - sycl::ext::intel::online_compiler moves to sycl::ext::intel::experimental.
      sycl::ext::intel::online_compiler is deprecated.
@dm-vodopyanov dm-vodopyanov deleted the private/dvodopya/update-oneapi-and-intel-extensions branch February 10, 2022 14:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants